内容评论标签的风格制作
评论的标签如下:
{qb:comment name="xxxxx" rows='5'}HTML代码片段{/qb:comment}
评论涉及到的元素有
{posturl} 这个是代表POST评论内容到哪个网址
{pageurl} 这个是代表显示更多页评论的地址
基本流程, 一个是评论区的内容. 一个是提交按钮.一个是数据提交处理事件

其中
<textarea name="textfield" id="comment_content"></textarea>
这个是评论区的内容. 这里的元素有一个 id="comment_content" 方便JS事件获取里边的内容
面下面这个就是评论按钮
<input type="button" name="Submit" value="发表留言" onclick="post_commentPc()">
这里有一个点击事件 post_commentPc()
他是JS处理评论事件
下面这段就是表单POST的JS处理事件
<script type="text/javascript">var posturl = "{posturl}"; //POST数据到指定网址var commentpage = 1; //默认显示第一页的数据var havepost = false; //做个标志,不要重复提交数据//POST评论内容function post_commentPc(){if(havepost===true){layer.alert("请不要重复提交数据");return ;}var contents = $('#comment_content').val(); //获取评论内容if(contents==''){layer.alert("请输入评论内容!");}else{havepost = true; //做个标志,不要重复提交$.post(posturl, //提交到指定网址{content:contents}, //提交的评论内容function(res,status){if(res.code==0){ //评论成功$('#comment_content').val(''); //清空评论区的内容$('#show_comment').html(res.data); //把返回的新的评论数据重新显示在网页上commentpage = 1; //恢复到第一页layer.msg('发表成功!');HiddenShowMoreComment(); //这里统计是否有分页,这个可删除}else{ //评论失败layer.alert('评论发表失败:'+res.msg);}havepost = false; //允许再次发表评论});}}</script>
发表评论这一块的完整代码如下:
<div class="PostComment"><div class="head">我要留言</div><dl><dt>内容:</dt><dd><textarea name="textfield" id="comment_content"></textarea></dd></dl><div class="sub"><input type="button" name="Submit" value="发表留言" onclick="post_commentPc()"></div></div><script type="text/javascript">var posturl = "{posturl}"; //POST数据到指定网址var commentpage = 1; //默认显示第一页的数据var havepost = false; //做个标志,不要重复提交数据//POST评论内容function post_commentPc(){if(havepost===true){layer.alert("请不要重复提交数据");return ;}var contents = $('#comment_content').val(); //获取评论内容if(contents==''){layer.alert("请输入评论内容!");}else{havepost = true; //做个标志,不要重复提交$.post(posturl, //提交到指定网址{content:contents}, //提交的评论内容function(res,status){if(res.code==0){ //评论成功$('#comment_content').val(''); //清空评论区的内容$('#show_comment').html(res.data); //把返回的新的评论数据重新显示在网页上commentpage = 1; //恢复到第一页layer.msg('发表成功!');HiddenShowMoreComment(); //这里统计是否有分页,这个可删除}else{ //评论失败layer.alert('评论发表失败:'+res.msg);}havepost = false; //允许再次发表评论});}}</script>
下面这个图是显示评论内容的处理

代码如下:
id="show_comment" 给DIV定义一个容器存放更多页的评论显示
{volist name="listdb" id="rs"} 代码段 {/volist} 这里是把默认第一页的评论循环显示出来
onclick="Show_MoreComment()" 这个是点击事件,显示更多评论
{pageurl} 这个是评论更多数据的调用地址
<div class="ShowComment"><div class="head">用户留言</div><div id="show_comment">{volist name="listdb" id="rs"}<div class="ListComment"><dl><dt><a href="{:get_url('user',$rs.uid)}" target="_blank"><img src="{$rs.icon}" onerror="this.src='__STATIC__/images/nobody.gif'"></a></dt><dd>{$rs.content}</dd></dl><div class="moreinfo">称呼:{$rs.username} 日期:{$rs.time}<A HREF="#">删除</A></div></div>{/volist}</div><div class="ShowMoreComment" style="text-align:center;margin:10px;"><button style="padding:8px;background:Orange;border:1px solid #fff;color:#fff;" type="butter" onclick="Show_MoreComment()">更多评论 <i class="fa fa-angle-double-down"></i></button></div></div><br><script type="text/javascript">//显示更多数据function Show_MoreComment(){commentpage++;$.get('{pageurl}?page='+commentpage,function(res){if(res.code==0){if(res.data==''){layer.msg('显示完了!');$('.ShowMoreComment button').hide();;}else{$('#show_comment').append(res.data); //更多评论数据调用成功,追加显示}}else{layer.msg(res.msg,{time:2500});}});}//判断是否有更多页数据function HiddenShowMoreComment(){var Comments=$('#show_comment .ListComment').length;if(parseInt(Comments/{$cfg_array.rows})<1){$('.ShowMoreComment').hide();}else{$('.ShowMoreComment').show();}}HiddenShowMoreComment();</script>
评论的完整代码如下
<div class="PostComment"><div class="head">我要留言</div><dl><dt>内容:</dt><dd><textarea name="textfield" id="comment_content"></textarea></dd></dl><div class="sub"><input type="button" name="Submit" value="发表留言" onclick="post_commentPc()"></div></div><script type="text/javascript">var posturl = "{posturl}"; //POST数据到指定网址var commentpage = 1; //默认显示第一页的数据var havepost = false; //做个标志,不要重复提交数据//POST评论内容function post_commentPc(){if(havepost===true){layer.alert("请不要重复提交数据");return ;}var contents = $('#comment_content').val(); //获取评论内容if(contents==''){layer.alert("请输入评论内容!");}else{havepost = true; //做个标志,不要重复提交$.post(posturl, //提交到指定网址{content:contents}, //提交的评论内容function(res,status){if(res.code==0){ //评论成功$('#comment_content').val(''); //清空评论区的内容$('#show_comment').html(res.data); //把返回的新的评论数据重新显示在网页上commentpage = 1; //恢复到第一页layer.msg('发表成功!');HiddenShowMoreComment(); //这里统计是否有分页,这个可删除}else{ //评论失败layer.alert('评论发表失败:'+res.msg);}havepost = false; //允许再次发表评论});}}</script><div class="ShowComment"><div class="head">用户留言</div><div id="show_comment">{volist name="listdb" id="rs"}<div class="ListComment"><dl><dt><a href="{:get_url('user',$rs.uid)}" target="_blank"><img src="{$rs.icon}" onerror="this.src='__STATIC__/images/nobody.gif'"></a></dt><dd>{$rs.content}</dd></dl><div class="moreinfo">称呼:{$rs.username} 日期:{$rs.time}<A HREF="#">删除</A></div></div>{/volist}</div><div class="ShowMoreComment" style="text-align:center;margin:10px;"><button style="padding:8px;background:Orange;border:1px solid #fff;color:#fff;" type="butter" onclick="Show_MoreComment()">更多评论 <i class="fa fa-angle-double-down"></i></button></div></div><br><script type="text/javascript">//显示更多数据function Show_MoreComment(){commentpage++; //第几页$.get('{pageurl}?page='+commentpage,function(res){if(res.code==0){if(res.data==''){layer.msg('显示完了!');$('.ShowMoreComment button').hide();;}else{$('#show_comment').append(res.data); //更多评论数据调用成功,追加显示}}else{layer.msg(res.msg,{time:2500});}});}//判断是否有更多页数据 , 并不重要function HiddenShowMoreComment(){var Comments=$('#show_comment .ListComment').length;if(parseInt(Comments/{$cfg_array.rows})<1){$('.ShowMoreComment').hide();}else{$('.ShowMoreComment').show();}}HiddenShowMoreComment();</script>
